-
Notifications
You must be signed in to change notification settings - Fork 154
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix race condition in Makefile #12
base: master
Are you sure you want to change the base?
Conversation
The intent of this pull is to streamline the API only make instructions to include it as an option in the download itself.
- Changed 2-spacing to 4-spacing - Make self-consistent indentation
Make indent consistent with PEP-8
Update Makefile to include a "make api" command
Fix the following error: =========== make install ./uninstall-opencv.sh make: execvp: ./uninstall-opencv.sh: Text file busy Makefile:27: recipe for target 'uninstallopencv' failed make: *** [uninstallopencv] Error 127 The problem is that Makefile will run in parallel, and chmod and execvp just run at the same time will trigger this. git support +x natively. Just checkin the code with +x permission and remove the chown hack in the Makefile
make doesn't run in parallel unless you run at make -jN with N>1... Are you seeing something different? On what system? GNU make knows how to execute several recipes at once. Normally, make will execute only one recipe at a time, waiting for it to finish before executing the next. However, the ‘-j’ or ‘--jobs’ option tells make to execute many recipes simultaneously. |
Saw in an AWS docker. Anyway the chmod in a Makefile is a hack, why not
just change the attribute in git.
2018-03-08 14:27 GMT-08:00 John ONeill <notifications@github.com>:
… make doesn't run in parallel unless you run at make -jN with N>1... Are
you seeing something different? On what system?
GNU make knows how to execute several recipes at once. Normally, make will
execute only one recipe at a time, waiting for it to finish before
executing the next. However, the ‘-j’ or ‘--jobs’ option tells make to
execute many recipes simultaneously.
https://www.gnu.org/software/make/manual/html_node/Parallel.html
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#12 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AGJz6xdPqk6oSZ0H_z8RSVqfEdUX2Owvks5tcbBugaJpZM4ShFM6>
.
|
I forgot to thank you, @ek9852 , for the submissions on this as well, so thanks again. I did a search on AWS running make in parallel and didn't find anything. I will discuss this request, but doing a search for GitHub executable permissions shows lots of issues people have had, a fair amount had to do with Windows and Unix/Linux/Mac cross platform complications that we would want to avoid. Are you able to run NCS natively on Darwin/Mac OS ? Somebody asked that on the #11 (comment) but I didn't see an answer. |
It can at least built the api and use it on MBP, but not everything builts. |
Hi, Thanks for your help! |
I encounter the same problem when building the Docker images. Some quick search leads to this sync hack: moby/moby#9547 (comment)
|
Fix the following error:
make install
./uninstall-opencv.sh
make: execvp: ./uninstall-opencv.sh: Text file busy
Makefile:27: recipe for target 'uninstallopencv' failed
make: *** [uninstallopencv] Error 127
The problem is that Makefile will run in parallel,
and chmod and execvp just run at the same time will
trigger this. git support +x natively.
Just checkin the code with +x permission and remove
the chmod hack in the Makefile